package com.xyy.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 医生活动报名视图对象（包含医生详细信息）
 */
@Data
@TableName("doctor_activity_registration")
public class DoctorActivityRegistrationVO {
    
    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    
    /**
     * 活动ID
     */
    private Long activityId;
    
    /**
     * 医生ID
     */
    private Long doctorId;
    
    /**
     * 报名状态：REGISTERED-已报名，COMPLETED-已完成
     */
    private String status;
    
    /**
     * 报名时间
     */
    private LocalDateTime registrationTime;
    
    /**
     * 参加时间
     */
    private LocalDateTime attendTime;
    
    /**
     * 完成时间
     */
    private LocalDateTime completeTime;
    
    /**
     * 获得的积分
     */
    private Integer pointsEarned;
    
    /**
     * 备注
     */
    private String remark;
    
    /**
     * 创建时间
     */
    @TableField(value = "created_at", fill = FieldFill.INSERT)
    private LocalDateTime createdAt;
    
    /**
     * 更新时间
     */
    @TableField(value = "updated_at", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updatedAt;
    
    // ========== 医生详细信息 ==========
    
    /**
     * 医生姓名
     */
    @TableField(exist = false)
    private String doctorName;
    
    /**
     * 医院名称
     */
    @TableField(exist = false)
    private String hospitalName;
    
    /**
     * 执业范围
     */
    @TableField(exist = false)
    private String practiceScope;
    
    /**
     * 医生电话
     */
    @TableField(exist = false)
    private String phone;
    
    /**
     * 医生邮箱
     */
    @TableField(exist = false)
    private String email;
    
    /**
     * 性别：0-未知，1-男，2-女，3-其他
     */
    @TableField(exist = false)
    private Integer gender;
}
